Jetfire Data Model

Modified on 2009/07/30 16:12 by Charles — Categorized as: Solutions

Table of Contents [Hide/Show]


   Jetfire Data Model
      The Subscription
      The Workspace
      The Workflow
       Roles
      Access Control Lists
      Roles and Access Control Lists
       Namespace
       Workflow Class


Figure 1: (simple) Jetfire Data Model

Figure 1: (simple) Jetfire Data Model

Jetfire Data Model

It is important to understand the relationship of Jetfire objects with Web Parts:
Jetfire provides a flexible way of connecting data. The typical way of connecting data is explained on this page.

Figure 1 is a simple diagram that shows the relationship between Subscription, Workspace, Workflow, Namespace and Workflow Class.

The Subscription

The Subscription maps to the data storage of a set of workflows that a user can access.

The Workspace

The Workspace can be viewed as a folder where workflows are stored. It is used to organize Workflows in the subscription.

The Workflow

The Workflow is the basis of Jetfire. The basic tenet is that "Everything is a workflow". Hence, all Jetfire objects inherit from a common object.

Figure 2: Roles and Access Control Lists

Figure 2: Roles and Access Control Lists

Roles

Roles provide the logged-in user with permissions for accessing workflows, executing methods, accessing properties and changing permissions.

Figure 2 shows a set of Users (who are logged in) and a set of Workflows.

All workflows have a Roles property that contains a list of Roles. Roles map to permissions for workflows.

Access Control Lists

All workflows have an ACL property. The Access Control List 'controls who has access to the workflow'.








Figure 3: Mapping Roles to Access Control Lists

Figure 3: Mapping Roles to Access Control Lists

Roles and Access Control Lists

Figure 3 shows how roles map to access control lists to provide access to workflows. e.g. a logged-in user with Role A can access Workflows with Role A in its Access Control List.

Namespace

The Namespace is a directory for jetfire code and class objects.

Workflow Class

A Jetfire 'workflow class' is standard OO class. The Workflow Class is the definition for the workflow - it is the Jetfire code.